\frame
{
  \frametitle{Detector2 (interface)}
  Detector2: implemented by classes which scan application classes for bugs
  \B
  \item We refer to such classes as ``detectors''
  \item {\tt visitClass} method invoked on each application class
%  \item How it works is up to you
%   \B
%   \item Several ``off the shelf'' superclasses available
%         to be extended by your detector class
%   \E
  \item General idea:
    \B
    \item Request one or more {\em analysis objects} from the AnalysisCache
         for the class and its methods
%    \item An analysis object represents facts (or probable facts)
%          about a class or method
    \item Inspect analysis objects
    \item Report warnings for suspicious situations in code
    \E
  \E
}
